SET QUOTED_IDENTIFIER OFF
GO
SET ANSI_NULLS ON
GO
CREATE  Procedure [dbo].[SP_TCRENO_PROV_D01]      
/*-------------------------------------------------------*/      
/*---Empresa              : OFISIS S.A.                --*/      
/*---Cliente              : OFISIS S.A.                --*/      
/*---Sistema              : Tesoreria                  --*/      
/*---Mödulo               : Empresa                    --*/      
/*---Programa             : Eliminacion de Documentos  --*/      
/*                          Generados x Renovaci÷n     --*/      
/*                          de Letras                  --*/       
/*---Script               : TCRENO_PROV_D01.sql        --*/      
/*---Nombre SP            : SP_TCRENO_PROV_D01         --*/      
/*---Desarrollado por     : Denis Villacr's            --*/      
/*---Fecha Creaciön       : 06/07/2000                 --*/      
/*---Base Datos           : Microsoft Sql Server       --*/      
/*---Versiön              : 7.0                        --*/      
/*---Invoca a SP          :                            --*/      
/*-------------------------------------------------------*/      
      
/*-------------------------------------------------------*/      
/*---Modificado 1 por     : DCH                        --*/      
/*---Fecha Modificaciön   : 14/03/2002                 --*/       
/*---Detalle Modificaciön :Se modific© la eliminac para que --*/      
/*---      jale el estado original y no el "ACE"--*/      
/*-------------------------------------------------------*/      

/*-------------------------------------------------------*/  
/*---Modificado 2 por     : Maribel Julca Rodriguez    --*/  
/*---Fecha Modificaci©n   : 21/04/2005                 --*/   
/*---Detalle Modificaci©n : ingreso de los campos CO_USUA_CREA, CO_USUA_MODI  --*/  
/*-------------------------------------------------------*/  
      
      
/*-------------------------------------------------------*/      
/*---Comentarios                                       --*/      
/*---                                                  --*/      
/*---                                                  --*/      
/*-------------------------------------------------------*/      
      
/*-------------------------------------------------------*/      
/*---Drop Proc SP_TCRENO_PROV_D01                      --*/      
/*---Grant EXECUTE on SP_TCRENO_PROV_D01 to public         --*/       
/*---SP_TCRENO_PROV_D01                               --*/      
/*-------------------------------------------------------*/      
 @ISCO_EMPR      TD_VC_002,       
 @ISCO_USUA_MODI TD_VC_008_USUA,      
 @ISCO_UNID_CONC TD_VC_003,      
 @ISCO_PROV      TD_VC_020,      
 @ISNU_RENO      TD_VC_008,      
 @IDFE_RENO      TD_DT_001
As
Declare      
 @VSCO_ESDO_TMDO TD_VC_003,      
 @VSCO_ESDO_TMLE TD_VC_003,      
 @VSCO_DOCU_LETR    TD_VC_003      
      
  Begin Tran SP_TCRENO_PROV_D01      
      
      
    Exec SP_TTTIES_DOCU_Q01 1, @VSCO_ESDO_TMDO  OUTPUT      
      
--    Select @VSCO_ESDO_TMDO = CO_ESTA_DOCU From TTTIES_DOCU      
--    Where ST_ESDO_0001 = 'S'      
      
 Update  TMDOCU_PROV       
      Set  TMDOCU_PROV.CO_ESTA_DOCU = IsNull(TDRENO_PROV.CO_ESTA_ORIG, @VSCO_ESDO_TMDO),      
      TMDOCU_PROV.NU_RENO = NULL,      
      TMDOCU_PROV.IM_PAGA = TMDOCU_PROV.IM_PAGA - TDRENO_PROV.IM_RENO_MDOC,      
      TMDOCU_PROV.FE_USUA_MODI = Getdate(),       
             TMDOCU_PROV.CO_USUA_MODI = @ISCO_USUA_MODI      
 From  TDRENO_PROV      
 Where  TMDOCU_PROV.CO_EMPR = @ISCO_EMPR      
      And TMDOCU_PROV.CO_PROV = @ISCO_PROV     
      And TDRENO_PROV.CO_EMPR = TMDOCU_PROV.CO_EMPR      
             And TDRENO_PROV.CO_UNID_CONC =  @ISCO_UNID_CONC      
             And TDRENO_PROV.CO_PROV =  TMDOCU_PROV.CO_PROV      
             And TDRENO_PROV.NU_RENO = @ISNU_RENO     
             And TDRENO_PROV.FE_RENO = @IDFE_RENO      
             And TDRENO_PROV.CO_TIPO_DOCU = TMDOCU_PROV.CO_TIPO_DOCU      
             And TDRENO_PROV.NU_DOCU_PROV = TMDOCU_PROV.NU_DOCU_PROV      
       
    If @@error <> 0      
       Begin      
         Rollback tran      
         Return      
       End      
      
       Exec SP_TTTIES_DOCU_Q01  7, @VSCO_ESDO_TMLE  OUTPUT      
      
       Exec SP_TTDOCU_CNTB_Q01 6, @VSCO_DOCU_LETR OUTPUT      
      
-- Select @VSCO_ESDO_TMLE = CO_ESTA_DOCU From TTTIES_DOCU      
--     Where ST_ESDO_0007 = 'S'      
      
 Update  TMLETR_PROV       
 Set  TMLETR_PROV.CO_ESTA_DOCU = IsNull(TDRENO_PROV.CO_ESTA_ORIG, @VSCO_ESDO_TMLE),      
         TMLETR_PROV.NU_RENO = NULL,      
         TMLETR_PROV.IM_PAGA = TMLETR_PROV.IM_PAGA - TDRENO_PROV.IM_RENO_MDOC,      
         TMLETR_PROV.FE_USUA_MODI = Getdate(),       
  TMLETR_PROV.CO_USUA_MODI = @ISCO_USUA_MODI      
 From TDRENO_PROV      
  Where  TMLETR_PROV.CO_EMPR = @ISCO_EMPR      
      And TMLETR_PROV.CO_PROV = @ISCO_PROV      
      And TDRENO_PROV.CO_EMPR = TMLETR_PROV.CO_EMPR      
             And TDRENO_PROV.CO_UNID_CONC =  @ISCO_UNID_CONC      
             And TDRENO_PROV.CO_PROV = TMLETR_PROV.CO_PROV      
             And TDRENO_PROV.NU_RENO = @ISNU_RENO      
             And TDRENO_PROV.FE_RENO = @IDFE_RENO      
             And TDRENO_PROV.CO_TIPO_DOCU = @VSCO_DOCU_LETR       
             And TDRENO_PROV.NU_DOCU_PROV = TMLETR_PROV.NU_LETR_PROV      
      
      
    If @@error <> 0      Begin      
         Rollback tran      
         Return      
       End      
      
 Insert into  TMREGI_ELIM (CO_EMPR, CO_TABL_ORIG, DE_TABL_ORIG,      
           CO_CLAV_TAOR, CO_USUA_CREA,FE_USUA_CREA, CO_USUA_MODI, FE_USUA_MODI)       
          
 Select @ISCO_EMPR, 81, 'MAESTRO LETRAS PROVEEDOR',      
  Rtrim( @ISCO_EMPR )+ Replicate('#', 2-Len(Rtrim(@ISCO_EMPR))) +       
  Rtrim( @ISCO_PROV )+ Replicate('#', 20-Len(Rtrim(@ISCO_PROV))) +      
  Rtrim( T1.NU_LETR_PROV )+ Replicate('#', 15-Len(Rtrim(T1.NU_LETR_PROV))), @ISCO_USUA_MODI,GETDATE(), @ISCO_USUA_MODI, GETDATE()       
       
 From  TMLETR_PROV  T1, TDRENO_PROV T2     
 Where T1.CO_EMPR = @ISCO_EMPR      
       And T1.CO_PROV = @ISCO_PROV      
    And T2.CO_EMPR = T1.CO_EMPR       
        And T2.CO_UNID_CONC = @ISCO_UNID_CONC      
        And T2.CO_PROV = T1.CO_PROV       
        And T2.NU_RENO = @ISNU_RENO       
        And T2.FE_RENO = @IDFE_RENO       
        And T2.NU_LETR_PROV = T1.NU_LETR_PROV      
    
    
   If @@error <> 0      
      Begin      
        Rollback tran      
        Return      
      End          
      
      
     Delete  TMLETR_PROV       
      Where  TMLETR_PROV.CO_EMPR = @ISCO_EMPR       
            And TMLETR_PROV.CO_PROV = @ISCO_PROV       
  And TMLETR_PROV.NU_RENO = @ISNU_RENO       
  And Exists (Select  T1.CO_PROV       
       From    TDRENO_PROV T1       
       Where   T1.CO_EMPR = @ISCO_EMPR       
        And T1.CO_UNID_CONC = @ISCO_UNID_CONC      
        And TMLETR_PROV.CO_EMPR = T1.CO_EMPR       
        And TMLETR_PROV.CO_PROV = T1.CO_PROV       
        And T1.NU_RENO = @ISNU_RENO       
        And T1.FE_RENO = @IDFE_RENO       
        And TMLETR_PROV.NU_LETR_PROV = T1.NU_LETR_PROV)      
      
     If @@error <> 0      
       Begin      
         Rollback tran      
         Return      
       End          
      
      
 Insert Into  TMREGI_ELIM (CO_EMPR, CO_TABL_ORIG, DE_TABL_ORIG,      
          CO_CLAV_TAOR, CO_USUA_CREA,FE_USUA_CREA, CO_USUA_MODI, FE_USUA_MODI )      
    select @ISCO_EMPR, 82, 'DETALLE RENOVACION PROVEEDOR',      
  RTRIM( @ISCO_EMPR )+ REPLICATE('#', 2-LEN(RTRIM(@ISCO_EMPR)))+       
  RTRIM( @ISCO_PROV )+ REPLICATE('#', 20-LEN(RTRIM(@ISCO_PROV)))+      
  RTRIM( @ISNU_RENO )+ REPLICATE('#', 8-LEN(RTRIM(@ISNU_RENO)))+      
  RTRIM( NU_SECU )+ REPLICATE('#', 1-LEN(RTRIM(NU_SECU))), @ISCO_USUA_MODI,GETDATE(), @ISCO_USUA_MODI, GETDATE()      
 From  TDRENO_PROV      
 Where CO_EMPR = @ISCO_EMPR      
       And CO_UNID_CONC = @ISCO_UNID_CONC      
       And CO_PROV = @ISCO_PROV      
       And NU_RENO = @ISNU_RENO      
       And FE_RENO = @IDFE_RENO      
      
   If @@error <> 0      
      Begin      
        Rollback tran      
        Return      
      End          
      
      
   Delete TDRENO_PROV      
     Where CO_EMPR = @ISCO_EMPR      
       And CO_UNID_CONC = @ISCO_UNID_CONC      
       And CO_PROV = @ISCO_PROV      
       And NU_RENO = @ISNU_RENO      
       And FE_RENO = @IDFE_RENO      
      
    If @@error <> 0      
       Begin      
         Rollback tran      
         Return      
       End              
      
      
 Insert into  TMREGI_ELIM (CO_EMPR, CO_TABL_ORIG, DE_TABL_ORIG,      
           CO_CLAV_TAOR, CO_USUA_CREA,FE_USUA_CREA, CO_USUA_MODI, FE_USUA_MODI)       
    select @ISCO_EMPR, 23, 'CABECERA RENOVACION PROVEEDOR',      
  RTRIM( @ISCO_EMPR )+ REPLICATE('#', 2-LEN(RTRIM(@ISCO_EMPR)))+       
  RTRIM( @ISCO_PROV )+ REPLICATE('#', 20-LEN(RTRIM(@ISCO_PROV)))+      
  RTRIM( @ISNU_RENO )+ REPLICATE('#', 8-LEN(RTRIM(@ISNU_RENO))), @ISCO_USUA_MODI,GETDATE(), @ISCO_USUA_MODI, GETDATE()      
 From  TCRENO_PROV      
 Where CO_EMPR = @ISCO_EMPR      
       And CO_UNID_CONC = @ISCO_UNID_CONC      
       And CO_PROV = @ISCO_PROV      
       And NU_RENO = @ISNU_RENO      
       And FE_RENO = @IDFE_RENO      
      
   If @@error <> 0      
 Begin      
        Rollback tran      
        Return      
      End          
      
      
  Delete TCRENO_PROV      
     Where CO_EMPR = @ISCO_EMPR      
       And CO_UNID_CONC = @ISCO_UNID_CONC      
       And CO_PROV = @ISCO_PROV      
       And NU_RENO = @ISNU_RENO      
       And FE_RENO = @IDFE_RENO      
      
    If @@error <> 0      
       Begin      
         Rollback tran      
         Return      
       End          
      
Commit Tran      
/*------------------------- Fin ------------------------------*/


GO
